﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevComponents.DotNetBar;
using DLL;
using BLL;

namespace CuaHangBangDia
{
    public partial class Form_NhanVien : DevComponents.DotNetBar.RibbonForm
    {
        NHAN_VIEN nv;
        public Form_NhanVien()
        {
            InitializeComponent();
        }

        NhanVienManager manager = new NhanVienManager();

        private void Form_NhanVien_Load(object sender, EventArgs e)
        {
            load();
        }

        private void load()
        {
            grvNhanVien.DataSource = getAll(manager.GetAll());
        }

        DataTable getAll(List<NHAN_VIEN> L)
        {
            DataTable t = new DataTable();
            t.Columns.Add("Mã nhân viên");
            t.Columns.Add("Tên nhân viên");
            t.Columns.Add("Giới tính");
            t.Columns.Add("Năm sinh");
            t.Columns.Add("Địa chỉ");
            t.Columns.Add("Số điện thoại");
            t.Columns.Add("Email");
            t.Columns.Add("Số CMND");
            foreach (var item in L)
            {
                t.Rows.Add(item.MaNhanVien,item.TenNhanVien,item.GioiTinh,item.NamSinh.Value.ToShortDateString(),item.DiaChi,item.SoDienThoai,item.Email,item.SoCMND);
            }
            return t;
        }

        private void btnThemNhanVien_Click(object sender, EventArgs e)
        {
            Form_NhanVien_Them_Sua frm = new Form_NhanVien_Them_Sua();
            frm.ShowDialog();
            load();
        }

        private void grvNhanVien_Click(object sender, EventArgs e)
        {
            nv = new NHAN_VIEN();
            try
            {
                DataGridViewRow grwRow = grvNhanVien.SelectedRows[0];
                DataRowView rw = grwRow.DataBoundItem as DataRowView;
                nv.MaNhanVien = txtMaNhanVien.Text = rw["Mã nhân viên"].ToString();
                nv.TenNhanVien = rw[1].ToString();
                if (rw[2].ToString() == "Nam")
                    nv.GioiTinh = "Nam";
                else
                {
                    nv.GioiTinh = "Nu";
                }
                nv.NamSinh = DateTime.Parse(rw[3].ToString());
                nv.DiaChi = rw[4].ToString();
                nv.SoDienThoai = rw[5].ToString();
                nv.Email= rw[6].ToString();
                nv.SoCMND = rw[7].ToString();
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message,"Có lỗi xảy ra");
            }
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnXoaNhanVien_Click(object sender, EventArgs e)
        {
            try
            {
                string MaNhanVien = txtMaNhanVien.Text;
                manager.XoaNV(MaNhanVien);
                MessageBox.Show("Xoá thành công");
                load();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Có lỗi xảy ra");
            }
        }

        private void btnSuaNhanVien_Click(object sender, EventArgs e)
        {
            if (nv != null)
            {
                Form_NhanVien_Them_Sua frm = new Form_NhanVien_Them_Sua(nv);
                frm.ShowDialog();
                load();
            }
            else
                MessageBox.Show("Vui lòng chọn nhân viên cần sửa");
        }

        private void btnInDSNhanVien_Click(object sender, EventArgs e)
        {
            Form_InNhanVien innv = new Form_InNhanVien();
            innv.ShowDialog();
        }

        private void btnTimKiem_Click(object sender, EventArgs e)
        {
            Form_NhanVien_TimKiem frm = new Form_NhanVien_TimKiem();
            frm.ShowDialog();
            if (frm.NhanVien!=null || frm.NhanVien.Count > 0)
                grvNhanVien.DataSource = getAll(frm.NhanVien);
        }

        
    }
}